Google Hotel Info will provide you with structured data available for a specific hotel entity on the Google Hotels platform: such as service description, location details, rating, amenities, reviews, images, prices, and more.
Instead of ‘login’ and ‘password’ use your credentials from https://app.dataforseo.com/api-dashboard
# Instead of 'login' and 'password' use your credentials from https://app.dataforseo.com/api-dashboard
login="login"
password="password"
cred="$(printf ${login}:${password} | base64)"
curl --location --request POST "https://api.dataforseo.com/v3/business_data/google/hotel_info/live/advanced"
--header "Authorization: Basic ${cred}"
--header "Content-Type: application/json"
--data-raw "[
{
"language_code": "en",
"location_name": "New York,New York,United States",
"hotel_identifier": "CgoI-KWyzenM_MV3EAE"
}
]"
<?php
// You can download this file from here https://cdn.dataforseo.com/v3/examples/php/php_RestClient.zip
require('RestClient.php');
$api_url = 'https://api.dataforseo.com/';
// Instead of 'login' and 'password' use your credentials from https://app.dataforseo.com/api-dashboard
$client = new RestClient($api_url, null, 'login', 'password');
$post_array = array();
// example #1 - a simple way to set a task
// this way requires you to specify a location, a language of search, and a hotel_identifier.
$post_array[] = array(
"location_code" => 1023191,
"language_code" => "en",
"hotel_identifier" => mb_convert_encoding("ChYIq6SB--i6p6cpGgovbS8wN2s5ODZfEAE", "UTF-8")
);
// example #2 - a way to set a task with additional parameters
$post_array[] = array(
"location_name" => "New York,New York,United States",
"language_name" => "English",
"hotel_identifier" => mb_convert_encoding("ChYIq6SB--i6p6cpGgovbS8wN2s5ODZfEAE", "UTF-8")
);
// this example has 2 elements, but in the case of large number of tasks - send up to 100 elements per POST request
if (count($post_array) > 0) {
try {
// POST /v3/business_data/google/hotel_info/live/advanced
$result = $client->post('/v3/business_data/google/hotel_info/live/advanced', $post_array);
print_r($result);
// do something with post result
} catch (RestClientException $e) {
echo "n";
print "HTTP code: {$e->getHttpCode()}n";
print "Error code: {$e->getCode()}n";
print "Message: {$e->getMessage()}n";
print $e->getTraceAsString();
echo "n";
}
}
$client = null;
?>
from client import RestClient
# You can download this file from here https://cdn.dataforseo.com/v3/examples/python/python_Client.zip
client = RestClient("login", "password")
post_data = dict()
# simple way to set a task
post_data[len(post_data)] = dict(
location_code=1023191,
language_code="en",
hotel_identifier="CgoI-KWyzenM_MV3EAE"
)
post_data[len(post_data)] = dict(
location_name="New York,New York,United States",
language_name="English",
hotel_identifier="CgoI-KWyzenM_MV3EAE"
)
# POST /v3/business_data/google/hotel_info/live/advanced
response = client.post("/v3/business_data/google/hotel_info/live/advanced", post_data)
# you can find the full list of the response codes here https://docs.dataforseo.com/v3/appendix/errors
if response["status_code"] == 20000:
print(response)
# do something with result
else:
print("error. Code: %d Message: %s" % (response["status_code"], response["status_message"]))
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Text;
using System.Threading.Tasks;
namespace DataForSeoDemos
{
public static partial class Demos
{
public static async Task business_data_info_live()
{
var httpClient = new HttpClient
{
BaseAddress = new Uri("https://api.dataforseo.com/"),
// Instead of 'login' and 'password' use your credentials from https://app.dataforseo.com/api-dashboard
DefaultRequestHeaders = { Authorization = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(Encoding.ASCII.GetBytes("login:password"))) }
};
var postData = new List<object>();
// example #1 - a simple way to set a task
// this way requires you to specify a location, a language of search, and a hotel_identifier.
postData.Add(new
{
language_code = "en",
location_code = 1023191,
hotel_identifier = "CgoI-KWyzenM_MV3EAE"
});
// example #2 - a way to set a task with additional parameters
postData.Add(new
{
language_name = "English",
location_name = "New York,New York,United States",
hotel_identifier = "CgoI-KWyzenM_MV3EAE"
});
// POST /v3/business_data/google/hotel_info/live/advanced
var taskPostResponse = await httpClient.PostAsync("/v3/business_data/google/hotel_info/live/advanced", new StringContent(JsonConvert.SerializeObject(postData)));
var result = JsonConvert.DeserializeObject(await taskPostResponse.Content.ReadAsStringAsync());
// you can find the full list of the response codes here https://docs.dataforseo.com/v3/appendix/errors
if (result.status_code == 20000)
{
// do something with result
Console.WriteLine(result);
}
else
Console.WriteLine($"error. Code: {result.status_code} Message: {result.status_message}");
}
}
}
The above command returns JSON structured like this:
{
"version": "0.1.20210519",
"status_code": 20000,
"status_message": "Ok.",
"time": "3.1726 sec.",
"cost": 0.02,
"tasks_count": 1,
"tasks_error": 0,
"tasks": [
{
"id": "05241518-1535-0285-0000-68571061a539",
"status_code": 20000,
"status_message": "Ok.",
"time": "3.0892 sec.",
"cost": 0.02,
"result_count": 1,
"path": [
"v3",
"business_data",
"google",
"hotel_info",
"live",
"advanced"
],
"data": {
"api": "business_data",
"function": "hotel_info",
"se": "google",
"hotel_identifier": "CgoI-KWyzenM_MV3EAE",
"location_code": 1023191,
"language_code": "en",
"se_type": "hotel_info",
"device": "desktop",
"os": "windows"
},
"result": [
{
"hotel_identifier": "CgoI-KWyzenM_MV3EAE",
"location_code": 1023191,
"language_code": "en",
"check_url": "https://www.google.com/travel/hotels/entity/CgoI-KWyzenM_MV3EAE?hl=en&gl=US&gws_rd=cr&uule=w+CAIQIFISCTsIP9OlT8KJEWL-d-EGjwvI&ts=CAESCAoCCAMKAggDGjcKGRIVOhNDZ29JLUtXeXplbk1fTVYzRUFFGgASGhIUCgcI5Q8QBRgZEgcI5Q8QBRgaGAEyAhAAKg8KCygBSgIgAToDVVNEGgA",
"datetime": "2021-05-24 12:18:22 +00:00",
"title": "Wildwood Suites",
"stars": 3,
"stars_description": "3-star hotel",
"address": "120 Sawmill Rd, Breckenridge, CO 80424",
"phone": "+19705474800",
"about": {
"description": "Homey 1- & 2-bedroom ski-in/ski-out condos with kitchens in a hotel offering an outdoor hot tub.",
"sub_descriptions": [
"Next to the 4 O’Clock Ski Run of the Breckenridge Ski Resort, this relaxed condo hotel is 2 miles from the Imperial Express ski lift.",
"Offering ski-in/ski-out access, the casual 1- and 2-bedroom condos have a warm vibe, and feature free Wi-Fi and flat-screen TVs, as well as and kitchens, living areas and balconies or patios. Some duplex units have spiral stairs.",
"Parking is complimentary. There's also an outdoor hot tub, and a spa area with a sauna. Massage services are available."
],
"check_in_time": {
"hour": 16,
"minute": 0
},
"check_out_time": {
"hour": 11,
"minute": 0
},
"full_address": "Wildwood Suites, 120 Sawmill Rd, Breckenridge, CO 80424",
"domain": "www.breckenridgeresortmanagers.com",
"url": "https://www.breckenridgeresortmanagers.com/vacation-rentals/breckenridge-complex/wildwood-suites-lodge",
"amenities": [
{
"category": "policies_and_payments",
"category_label": "Policies & payments",
"items": [
{
"amenity": "smoke_free_property",
"amenity_label": "Smoke-free property",
"hint": null,
"hint_label": null
}
]
},
{
"category": "children",
"category_label": "Children",
"items": [
{
"amenity": "kid_friendly",
"amenity_label": "Kid-friendly",
"hint": null,
"hint_label": null
}
]
},
{
"category": "pools",
"category_label": "Pools",
"items": [
{
"amenity": "hot_tub",
"amenity_label": "Hot tub",
"hint": null,
"hint_label": null
}
]
},
{
"category": "parking_and_transportation",
"category_label": "Parking & transportation",
"items": [
{
"amenity": "parking",
"amenity_label": "Parking",
"hint": "free",
"hint_label": "Free"
}
]
},
{
"category": "wellness",
"category_label": "Wellness",
"items": [
{
"amenity": "fitness_center",
"amenity_label": "Fitness center",
"hint": null,
"hint_label": null
}
]
},
{
"category": "pets",
"category_label": "Pets",
"items": [
{
"amenity": "pets_allowed",
"amenity_label": "Pets allowed",
"hint": null,
"hint_label": null
}
]
},
{
"category": "rooms",
"category_label": "Rooms",
"items": [
{
"amenity": "kitchen",
"amenity_label": "Kitchen",
"hint": null,
"hint_label": null
}
]
}
],
"popular_amenities": [
{
"amenity": "parking",
"amenity_label": "Parking",
"hint": "free",
"hint_label": "Free"
},
{
"amenity": "hot_tub",
"amenity_label": "Hot tub",
"hint": null,
"hint_label": null
}
]
},
"location": {
"neighborhood": "",
"neighborhood_description": null,
"maps_url": "https://maps.google.com/maps?hl=en&gl=US&um=1&ie=UTF-8&fb=1&sa=X&ll=39.4806397,-106.0512973&z=15&ftid=0x0:0x778bf26699ac92f8&q=Wildwood+Suites",
"overall_score": 4.6,
"score_by_categories": {
"overall": 4.6,
"things_to_do": 4.8,
"restaurants": 4.5,
"transit": 4.9,
"airport_access": 1.9
},
"latitude": 39.4806397,
"longitude": -106.0512973,
"location_chain": [
{
"card_id": "/m/01n4w",
"feature_id": "0x874014749b1856b7:0xc75483314990a7ff",
"cid": "14363249359302207487",
"title": "Colorado"
},
{
"card_id": "/m/02b5n3",
"feature_id": "0x874722b914927c95:0x63217f66b7efe26",
"cid": "446445660195978790",
"title": "Colorado Western Slope"
},
{
"card_id": "/m/0rcrt",
"feature_id": "0x876af63d6c26e7c1:0x628d8f7f6680a27a",
"cid": "7101489964776465018",
"title": "Breckenridge"
},
{
"card_id": null,
"feature_id": "0x876af66539cef5ff:0x778bf26699ac92f8",
"cid": "8614245234755015416",
"title": "Wildwood Suites"
}
]
},
"reviews": {
"value": 4.3,
"votes_count": 73,
"mentions": [
{
"title": "Location",
"positive_score": 0.5201218,
"positive_count": 20,
"negative_count": 2,
"total_count": 25,
"visible_by_default": true
},
{
"title": "Pets",
"positive_score": 0,
"positive_count": 4,
"negative_count": 0,
"total_count": 5,
"visible_by_default": true
},
{
"title": "Property",
"positive_score": 0.61387336,
"positive_count": 14,
"negative_count": 2,
"total_count": 18,
"visible_by_default": true
},
{
"title": "Accessibility",
"positive_score": 0,
"positive_count": 5,
"negative_count": 1,
"total_count": 7,
"visible_by_default": true
},
{
"title": "Nature",
"positive_score": 0,
"positive_count": 7,
"negative_count": 1,
"total_count": 9,
"visible_by_default": true
},
{
"title": "Service",
"positive_score": 0,
"positive_count": 6,
"negative_count": 2,
"total_count": 9,
"visible_by_default": true
},
{
"title": "Bathroom",
"positive_score": 0,
"positive_count": 4,
"negative_count": 4,
"total_count": 8,
"visible_by_default": true
},
{
"title": "Kitchen",
"positive_score": 0,
"positive_count": 4,
"negative_count": 1,
"total_count": 5,
"visible_by_default": true
},
{
"title": "Sleep",
"positive_score": 0,
"positive_count": 2,
"negative_count": 4,
"total_count": 7,
"visible_by_default": true
},
{
"title": "Cleanliness",
"positive_score": 0,
"positive_count": 5,
"negative_count": 0,
"total_count": 6,
"visible_by_default": false
}
],
"rating_distribution": {
"5": 47,
"4": 41,
"3": 10,
"2": 0,
"1": 2
},
"other_sites_reviews": [
{
"title": "Priceline",
"url": "http://www.priceline.com/r/?channel=meta&product=hotel&theme=reviews&refid=PLGOOGLEHARV&refclickid=HARV_3850305&hotel_id=3850305",
"review_text": "Cute room . Kitchen very well stocked. Room was small but perfectly fine for myself/ husband/ and 2 young kids. Nice balcony view. Comfortable sofa couch. Would stay here again!",
"rating": {
"rating_type": "CustomMax",
"value": 7.7,
"votes_count": 17,
"rating_max": 10
}
},
{
"title": "Hotels.com",
"url": "https://www.hotels.com/ho481583/?q-check-out=2021-05-26&q-check-in=2021-05-25&q-room-0-adults=&rffrid=sem.hcom.US.156.017.02.localuniversal.02.desktop#reviews",
"review_text": "Location was perfect! The place was close to slopes and downtown walking to shops and dinner.. the beds were not great... and hard to regulate the heat...will stay again",
"rating": {
"rating_type": "CustomMax",
"value": 8,
"votes_count": 19,
"rating_max": 10
}
},
{
"title": "Expedia.com",
"url": "https://www.expedia.com/h15950.Hotel-Information?chkin=05/25/2021&chkout=05/26/2021&MDPCID=US.META.HPA.localuniversal-REVIEWS.HOTEL.desktop&mdpdtl=GGMETA.US.15950.20210525.20210526&mctc=10#section-reviews",
"review_text": "The bed was very uncomfortable along with the pillows, hurt my ears. Tried the pull out sofa instead this wasn't any better. We were to leave on Sunday but chose to leave on Saturday due to very little sleep.",
"rating": {
"rating_type": "Max5",
"value": 4.0602407,
"votes_count": 83,
"rating_max": null
}
},
{
"title": "Travelocity.com",
"url": "https://www.travelocity.com/h15950.Hotel-Information?chkin=05/25/2021&chkout=05/26/2021&MDPCID=TRAVELOCITY-US.META.HPA.localuniversal-REVIEWS.HOTEL.desktop&mdpdtl=GGMETA.US.15950.20210525.20210526&mctc=10#section-reviews",
"review_text": "What a great place to stay!I loved how close it was to town. We could walk to great shopping and dining. Would definitely stay here again!",
"rating": {
"rating_type": "Max5",
"value": 4.0602407,
"votes_count": 83,
"rating_max": null
}
},
{
"title": "Orbitz.com",
"url": "https://www.orbitz.com/h15950.Hotel-Information?chkin=05/25/2021&chkout=05/26/2021&MDPCID=ORBITZ-US.META.HPA.localuniversal-REVIEWS.HOTEL.desktop&mdpdtl=GGMETA.US.15950.20210525.20210526&mctc=10#section-reviews",
"review_text": "The room was clean and had all of the required appointments, however the bed was not comfortable and we opted to sleep on the hide-a-bed in the living room. We will not stay there again.",
"rating": {
"rating_type": "Max5",
"value": 4.0602407,
"votes_count": 83,
"rating_max": null
}
}
]
},
"overview_images": [
"https://lh5.googleusercontent.com/p/AF1QipNOg1SbjmpLFV72xKE7UPKVEqjnc0NKzla3jrUw=w592-h404-n-k-no-v1",
"https://lh3.googleusercontent.com/proxy/VRe96Pw8jCLM4fP8VlLS-WPek6UXqm3wRIUouJ253KnRRyAxS6ZdI8U11wJi2GCkh-HcQBowCzHSol8wby4YijPw-RUcpS1auNyyjJhxequOI5ACrWZ5Nmeybr-TvRm8NeTfCvoSkACv_8ys9iqiuMyVr8pOZA=w592-h404-n-k-no-v1",
"https://lh6.googleusercontent.com/proxy/k_qHyVmER9FIwABOHsaV6ePaicRGAsbukH_mA3TtkHZieZTg1unOdUanFt3HkCpUP4LsRhkbmbNzI6_ZrGveGltAvjWwoM0OeSiNWLfqL4gCL15_y_kpY3aRlsEM65gOPFe8xWSjiPgNMi3mv-j6euT-vgTWxA=w592-h404-n-k-no-v1",
"https://lh5.googleusercontent.com/p/AF1QipNft-tXaoio1YhftYyUl5LfBL5JYzw5CagVhn8Y=w592-h404-n-k-no-v1",
"https://lh5.googleusercontent.com/p/AF1QipMw-_hA8zLOy5AAYCRgxMb35uls2OOHiz4NjRnB=w592-h404-n-k-no-v1",
"https://lh6.googleusercontent.com/proxy/1NW-9c102eV53pffn_9NDnlHRwDFo1avQVsr2wBRWnR_e7TBPQu8NfglLYdbbY1sLZGqOrEn6iGZzHCCc0Yos1ifssxF0516Z-o_biW5XJRTjegPC3jZ6h2QqwqUw2q1AZXcFWiZSMiDzOUe2Y5HMHnUkGgxqns=w592-h404-n-k-no-v1",
"https://lh3.googleusercontent.com/proxy/MzAMQaEMQ1zo2jR35ilZah0P7EGiibcbgFRPvrdGrIgYQon23s6WOJO3EM8jjuNdZfF4r3td-ub4ybk5qZ9jopWhAKd4z8G3bty7HscQPo9KwaK_LB2sLPaSW9NGPrjjxhUD5nUckokqBLmbg8mi5S-POwaI1w=w592-h404-n-k-no-v1",
"https://lh4.googleusercontent.com/proxy/gQxCAIgJtafGbTVEppNaEvcncen1dPZohP9cWkKLYUSCt0gM9qEYxETuGFWGaYu8Pvkgvzy_rrgEiFV2n7SrnJdlf_TZueIcBh6WXzKqIL0JZW5Pk_bXVq9qXnMA57LbW8MiVg5fHXFIaux4tOC4ckdjQwdnVg=w592-h404-n-k-no-v1",
"https://lh6.googleusercontent.com/proxy/Dz2DQlVyp_5HVZPulu5L7C0u33Dijpi6tI9sNWnN-2zW4WDuEvFZrGYWtvEWWpkBlj8NJB3kxNWBr4N_zJrIkcgU154P71zUw_ygY2hfm6qplqXoV7N2dqhjXA_ETJAN3JRUQDYr_XhpHTy1yfxsqf1IpX4HZCE=w592-h404-n-k-no-v1"
],
"prices": {
"price": 91,
"price_without_discount": null,
"currency": "USD",
"discount_text": null,
"check_in": "2021-05-25 00:00:00 +00:00",
"check_out": "2021-05-26 00:00:00 +00:00",
"visitors": 2,
"items": [
{
"type": "hotel_info_price",
"title": "Priceline",
"price": 91,
"currency": "USD",
"url": "https://www.priceline.com/r/?channel=meta&product=hotel&theme=ghalistings&refid=PLGOOGLEMSS&refclickid=US_HP%7C3850305_localuniversal_1%7C20210525%7Cdesktop%7Cdefaultdate|public|1727673987||1%7C2%7C0|1&hotelid=3850305&checkin=20210525&checkout=20210526&rooms=1¤cy=USD&displayedCurr=USD&pOSCountryCode=US&taxDisplayMode=BP&cityid=3000002533&adults=2&land=L&metaid=AQ4IyJu_1dhNafoWk3dtxokLmsNOmpJsEsccgnegzgZFuZRbiZtsVZBU1PkudCunQv5EBubTEw1Ny8HNp6LF6WzZaE8CaPFTqOGD1PFrJyRXjelowXNF-A-ZTfx0axj3_JDHA8BzkRykI4qDtwN6jbsw9z0xngUUdL-rZ2826lQGo8LqxWJontlO4OBEJANLyOJAiJDDWgUCwpFMz_13eyUgpe2_vGSTsgolwbHO6x83RwsfYsHgN0U68HlcaMVs&dblcnt=true&user_num_adults=2",
"domain": "www.priceline.com",
"is_paid": true,
"free_cancellation_until": null,
"offers": [
{
"type": "hotel_info_price_offer",
"title": "One Bedroom Apartment - Non-Refundable",
"price": 91,
"currency": "USD",
"url": "https://www.priceline.com/r/?channel=meta&product=hotel&theme=ghalistings&refid=PLGOOGLEMSS&refclickid=US_HP%7C3850305_localuniversal_1%7C20210525%7Cdesktop%7Cdefaultdate|public|1727673987||1%7C2%7C0|1&hotelid=3850305&checkin=20210525&checkout=20210526&rooms=1¤cy=USD&displayedCurr=USD&pOSCountryCode=US&taxDisplayMode=BP&cityid=3000002533&adults=2&land=L&metaid=AQ4IyJu_1dhNafoWk3dtxokLmsNOmpJsEsccgnegzgZFuZRbiZtsVZBU1PkudCunQv5EBubTEw1Ny8HNp6LF6WzZaE8CaPFTqOGD1PFrJyRXjelowXNF-A-ZTfx0axj3_JDHA8BzkRykI4qDtwN6jbsw9z0xngUUdL-rZ2826lQGo8LqxWJontlO4OBEJANLyOJAiJDDWgUCwpFMz_13eyUgpe2_vGSTsgolwbHO6x83RwsfYsHgN0U68HlcaMVs&dblcnt=true&user_num_adults=2",
"max_visitors": 2,
"offer_images": [],
"free_cancellation_until": null
},
{
"type": "hotel_info_price_offer",
"title": "Two Bedroom Apartment - Non-Refundable",
"price": 96,
"currency": "USD",
"url": "https://www.priceline.com/r/?channel=meta&product=hotel&theme=ghalistings&refid=PLGOOGLEMSS&refclickid=US_HP%7C3850305_localuniversal_1%7C20210525%7Cdesktop%7Cdefaultdate|public|1727673987||1%7C2%7C0|1&hotelid=3850305&checkin=20210525&checkout=20210526&rooms=1¤cy=USD&displayedCurr=USD&pOSCountryCode=US&taxDisplayMode=BP&cityid=3000002533&adults=2&land=L&metaid=M40zFA1CCGM-IxxIq44e3CUWqlD5a0z6KkDU5tzVWhM0fUNdsuN00r2L67R7z7vMB_VgR8PT-eLKxleD4RMGjfh8q8xXmoTaVm0AZXEXgtGBahyrUAxwUci8-Kp9YWta9IVPAjO48FsyZ13Pbc4Lm2cFjW2ZnZwO3A15MjLxgvywYm9arDAfqPt8KODtGUCdnh3KA0xWZnrZkpdkLivYv9kNoRi663JsEef_xRbLXsCc9Jrf0NnLhzAOgYHLXJxJ&dblcnt=true&user_num_adults=2",
"max_visitors": 2,
"offer_images": [],
"free_cancellation_until": null
}
]
},
{
"type": "hotel_info_price",
"title": "Tripadvisor.com",
"price": 91,
"currency": "USD",
"url": "https://www.tripadvisor.com/Hotel_Review-s1-?geo=1&detail=82829&m=35972&staydates=2021_05_25_2021_05_26&uguests=1_2&supdv=desktop&supbl=localuniversal&supkl=default&supuc=US&supul=en&supia=1&supip=0&supmb=&supmc=xbr2MCO9M6dsSx2MABQCxBRh1ricQaWMxp4vC-32XxXsoZ8V-uhpU48-0HCKPV7hihtPRDseH7vaY-t_8qEvsuSdff2x1HbLy0hj-pl__NnAxoPl5EIWAyTnBvqR65ErEbt5Zk1JYQ4nCoRy88A&supts=jkiI5q5Aa7rPuwZiABQCxBRh1ricQaWMxp4vC-32XxXsoUInCbSoHI5xZzZy5Y5Ib69zmZfc9kW_CZzHzezw7gXRcNtrhdCTduPvRKdyNdyldmBbXgxnqkRm20gO0AJT6rShVLHoXCijZly9YJiHe1YxiVUl1rxb_ig1uLenjb8F&supey=m|111939|PL_G_query&supcd=6455439320&suptp=CJus9t_rlub_jkIRABQCxBRh1ricQaWMxp4vC-32XxXsoXvklfs_oTFWAi9ms7zCdCiq_6DuCrQ-tlv-JaZfS_zWgcVdTPK5mbmSk-O9L0Rrvp6n7bxXo5I6iuu0dyM9eX59nt3wcUb5LasP5ZTa6RqokbNbTieSxTl_NTwwm-qlt2U&gclid={gclid}",
"domain": "www.tripadvisor.com",
"is_paid": true,
"free_cancellation_until": null,
"offers": null
},
{
"type": "hotel_info_price",
"title": "Agoda",
"price": 91,
"currency": "USD",
"url": "https://www.agoda.com/partners/partnersearch.aspx?site_id=1731665&CkInDay=25&CkInMonth=05&CkInYear=2021&CkOutDay=26&campaignid=13226672775&CkOutMonth=05&CkOutYear=2021&SearchDateType=default&NumberOfAdults=2<=1&NumberOfChildren=0&childages=&NumberOfRooms=1&gsite=localuniversal&los=1&PartnerCurrency=USD&hid=679639&RoomID=3008150&PriceTax=123.77&PriceTotal=214.77&RatePlan=d14ff656-5f64-c75b-3c80-2488610d9eb2&UserCountry=US&Currency=USD&UserDevice=desktop&Verif=false&rr=&audience_list=&mcid=3038&booking_source=cpc&adType=1",
"domain": "www.agoda.com",
"is_paid": true,
"free_cancellation_until": null,
"offers": [
{
"type": "hotel_info_price_offer",
"title": "One Bedroom Apartment",
"price": 91,
"currency": "USD",
"url": "https://www.agoda.com/partners/partnersearch.aspx?site_id=1731665&CkInDay=25&CkInMonth=05&CkInYear=2021&CkOutDay=26&campaignid=13226672775&CkOutMonth=05&CkOutYear=2021&SearchDateType=default&NumberOfAdults=4<=1&NumberOfChildren=0&childages=&NumberOfRooms=1&gsite=localuniversal&los=1&PartnerCurrency=USD&hid=679639&RoomID=3008150&PriceTax=123.77&PriceTotal=214.77&RatePlan=d14ff656-5f64-c75b-3c80-2488610d9eb2&UserCountry=US&Currency=USD&UserDevice=desktop&Verif=false&rr=&audience_list=&mcid=3038&booking_source=cpc&adType=1",
"max_visitors": 4,
"offer_images": [
"https://lh3.googleusercontent.com/hrppk/ADiXZrGK1tJhPRww2lNO0dkBlpvnKbmTUI2Bm9_jTqq7B2pIk5LgTZumZBv2KzxifuAebKcxrOVWHZlqRBnfaJVLLCjUiWo4ajmwPJVp_lkZ0KOL3YNrmTasNxx-Y0O4OeFf1Hx5gL2KVX4qKC6RLuAgsUEuoliYVzr845HrVx1SX8i-pv-NYONoCfiP0C_Z6NnkyR8ymggYjjrF4oXpY72g0QwK4F80CLwu73o"
],
"free_cancellation_until": null
},
{
"type": "hotel_info_price_offer",
"title": "Two Bedroom Apartment ",
"price": 96,
"currency": "USD",
"url": "https://www.agoda.com/partners/partnersearch.aspx?site_id=1731665&CkInDay=25&CkInMonth=05&CkInYear=2021&CkOutDay=26&campaignid=13226672775&CkOutMonth=05&CkOutYear=2021&SearchDateType=default&NumberOfAdults=4<=1&NumberOfChildren=0&childages=&NumberOfRooms=1&gsite=localuniversal&los=1&PartnerCurrency=USD&hid=679639&RoomID=3008009&PriceTax=184.83&PriceTotal=280.83&RatePlan=a369a12c-f712-374d-ba65-9e0607b43719&UserCountry=US&Currency=USD&UserDevice=desktop&Verif=false&rr=&audience_list=&mcid=3038&booking_source=cpc&adType=1",
"max_visitors": 4,
"offer_images": [
"https://lh3.googleusercontent.com/hrppk/ADiXZrEOXuRjQ8vKN8Se8yIcRGMLuuBSZTE_HcCZShMmVmnqzKU1uvRRNEhJ7pbGmHshXI_g-pId9To0QDeXmngRL2fjQf6ANqHqY8lYaJYQ-pIbqaI6IBDzOL3N2qiit2Dg3Bfzhc3erE2g3Jq7is2J8-wTHw6Rfwy2q9K1jDBZslPsSA_n1-EG4o53sbprIdlRt42ZDJJmUyvd9kMRaBc2fbua7hK-PsQCX7L-"
],
"free_cancellation_until": null
}
]
},
{
"type": "hotel_info_price",
"title": "Priceline",
"price": 91,
"currency": "USD",
"url": "https://www.priceline.com/r/?channel=meta&product=hotel&theme=ghalistings&refid=PLGOOGLEMSS&refclickid=US_HP%7C3850305_localuniversal_1%7C20210525%7Cdesktop%7Cdefaultdate%7Cpublic%7C%7C%7C1%7C2%7C0%7C0&hotelid=3850305&checkin=20210525&checkout=20210526&rooms=1¤cy=USD&displayedCurr=USD&pOSCountryCode=US&taxDisplayMode=BP&cityid=3000002533&adults=2&land=L&metaid=AQ4IyJu_1dhNafoWk3dtxokLmsNOmpJsEsccgnegzgZFuZRbiZtsVZBU1PkudCunQv5EBubTEw1Ny8HNp6LF6WzZaE8CaPFTqOGD1PFrJyRXjelowXNF-A-ZTfx0axj3_JDHA8BzkRykI4qDtwN6jbsw9z0xngUUdL-rZ2826lQGo8LqxWJontlO4OBEJANLyOJAiJDDWgUCwpFMz_13eyUgpe2_vGSTsgolwbHO6x83RwsfYsHgN0U68HlcaMVs&dblcnt=true&user_num_adults=2",
"domain": "www.priceline.com",
"is_paid": false,
"free_cancellation_until": null,
"offers": null
},
{
"type": "hotel_info_price",
"title": "Agoda",
"price": 91,
"currency": "USD",
"url": "https://www.agoda.com/partners/partnersearch.aspx?site_id=1731665&CkInDay=25&CkInMonth=05&CkInYear=2021&CkOutDay=26&campaignid=&CkOutMonth=05&CkOutYear=2021&SearchDateType=default&NumberOfAdults=2<=1&NumberOfChildren=0&childages=&NumberOfRooms=1&gsite=localuniversal&los=1&PartnerCurrency=USD&hid=679639&RoomID=3008150&PriceTax=123.77&PriceTotal=214.77&RatePlan=d14ff656-5f64-c75b-3c80-2488610d9eb2&UserCountry=US&Currency=USD&UserDevice=desktop&Verif=false&rr=&audience_list=&mcid=3038&booking_source=cpc&adType=0",
"domain": "www.agoda.com",
"is_paid": false,
"free_cancellation_until": null,
"offers": null
},
{
"type": "hotel_info_price",
"title": "Tripadvisor.com",
"price": 91,
"currency": "USD",
"url": "https://www.tripadvisor.com/Hotel_Review-s1-?geo=1&detail=82829&m=66081&staydates=2021_05_25_2021_05_26&uguests=1_2&supdv=desktop&supbl=localuniversal&supkl=default&supuc=US&supul=en&supia=0&supip=0&supmb=&supmc=xbr2MCO9M6dsSx2MABQCxBRh1ricQaWMxp4vC-32XxXsoZ8V-uhpU48-0HCKPV7hihtPRDseH7vaY-t_8qEvsuSdff2x1HbLy0hj-pl__NnAxoPl5EIWAyTnBvqR65ErEbt5Zk1JYQ4nCoRy88A&supts=jkiI5q5Aa7rPuwZiABQCxBRh1ricQaWMxp4vC-32XxXsoUInCbSoHI5xZzZy5Y5Ib69zmZfc9kW_CZzHzezw7gXRcNtrhdCTduPvRKdyNdyldmBbXgxnqkRm20gO0AJT6rShVLHoXCijZly9YJiHe1YxiVUl1rxb_ig1uLenjb8F&supey=m%7C111939%7CPL_G_query&supcd=&suptp=CJus9t_rlub_jkIRABQCxBRh1ricQaWMxp4vC-32XxXsoXvklfs_oTFWAi9ms7zCdCiq_6DuCrQ-tlv-JaZfS_zWgcVdTPK5mbmSk-O9L0Rrvp6n7bxXo5I6iuu0dyM9eX59nt3wcUb5LasP5ZTa6RqokbNbTieSxTl_NTwwm-qlt2U",
"domain": "www.tripadvisor.com",
"is_paid": false,
"free_cancellation_until": null,
"offers": null
}
]
}
}
]
}
]
}
All POST data should be sent in the JSON format (UTF-8 encoding). The task setting is done using the POST method. When setting a task, you should send all task parameters in the task array of the generic POST array. You can send up to 2000 API calls per minute.
Below you will find a detailed description of the fields you can use for setting a task.
Description of the fields for setting a task:
Field name
Type
Description
hotel_identifier
string
unique hotel identifier required field
unique identifier of a hotel entity in Google search;
you can obtain the value by making a request to Advanced Google SERP API (enclosed in the hotels element of the response), or the Hotel Searches endpoint of Business Data API
example: ChYIq6SB--i6p6cpGgovbS8wN2s5ODZfEAE
location_name
string
full name of search engine location required field if you don’t specify location_code or location_coordinate if you use this field, you don’t need to specify location_code or location_coordinate
you can receive the list of available locations with location_name by making a separate request to https://api.dataforseo.com/v3/business_data/google/locations
example: London,England,United Kingdom
location_code
integer
search engine location code required field if you don’t specify location_name or location_coordinate if you use this field, you don’t need to specify location_name or location_coordinate
you can receive the list of available locations with location_code by making a separate request to the https://api.dataforseo.com/v3/business_data/google/locations
example: 2840
location_coordinate
string
GPS coordinates of a location required field if you don’t specify location_name or location_code if you use this field, you don’t need to specify location_name or location_code location_coordinate parameter should be specified in the “latitude, longitude” format
the maximum number of decimal digits for “latitude” and “longitude”: 7 Note: if the coordinates are used to set a location, the search will occur in the nearest settlement;
example: 53.476225,-2.243572
language_name
string
full name of search engine language required field if you don’t specify language_code if you use this field, you don’t need to specify language_code
you can receive the list of available languages with language_name by making a separate request to https://api.dataforseo.com/v3/business_data/google/languages
example: English
language_code
string
search engine language code required field if you don’t specify language_name if you use this field, you don’t need to specify language_name
you can receive the list of available languages with their language_code by making a separate request to https://api.dataforseo.com/v3/business_data/google/languages example: en
check_in
string
check-in date
optional field
if you don’t specify this field, tomorrow’s date will be used by default;
the value must not be earlier than today’s date
date format: "yyyy-mm-dd"
example: "2019-01-15"
check_out
string
check-out date
optional field
if you don’t specify this field, our system will apply the date of two days from now by default; Note: the value cannot be less than or equal to check_in;
the range between check_in and check_out values cannot exceed 30 days
date format: "yyyy-mm-dd"
example: "2019-01-15"
currency
string
currency
optional field
example: "USD"
adults
integer
number of adults
optional field
if you don’t specify this field, two adults will be used by default
example: 1
children
array
number and age of children
optional field
if you don’t specify this field, no children will be included in the search;
set the following value if you want to include one 14-years-old child: [14]
set the following value if you want to include one 13-years-old child and one 8-years-old child: [13,8]
tag
string
user-defined task identifier
optional field the character limit is 255
you can use this parameter to identify the task and match it with the result
you will find the specified tag value in the data object of the response
As a response of the API server, you will receive JSON-encoded data containing a tasks array with the information specific to the set tasks.
Description of the fields in the results array:
Field name
Type
Description
version
string
the current version of the API
status_code
integer
general status code
you can find the full list of the response codes here Note: we strongly recommend designing a necessary system for handling related exceptional or error conditions
status_message
string
general informational message
you can find the full list of general informational messages here
time
string
execution time, seconds
cost
float
total tasks cost, USD
tasks_count
integer
the number of tasks in the tasks array
tasks_error
integer
the number of tasks in the tasks array that were returned an error
tasks
array
array of tasks
id
string
task identifier unique task identifier in our system in the UUID format
status_code
integer
status code of the task
generated by DataForSEO; can be within the following range: 10000-60000
you can find the full list of the response codes here
status_message
string
informational message of the task
you can find the full list of general informational messages here
time
string
execution time, seconds
cost
float
cost of the task, USD
result_count
integer
number of elements in the result array
path
array
URL path
data
object
contains the same parameters that you specified in the POST request
result
array
array of results
hotel_identifier
string
identifier received in a POST array
this field will contain the hotel_identifier parameter specified when setting a task;
example: CgoI-KWyzenM_MV3EAE
location_code
integer
location code in a POST array
language_code
string
language code in a POST array
check_url
string
direct URL to search engine results
you can use it to make sure that we provided accurate results
datetime
string
date and time when the result was received
in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00”
example: 2019-11-15 12:57:46 +00:00
title
string
hotel title
the title of the hotel entity for which the results are collected
stars
integer
hotel class rating
class rating that ranges between 1-5 stars and displayed after review ratings in hotel summary
stars_description
string
hotel class rating
class rating that ranges between 1-5 stars and displayed after review ratings in the hotel summary
address
string
hotel address
physical address of the hotel
phone
string
hotel phone number
contact phone number of the hotel
about
object
information about the hotel
description
string
description of the hotel
the description of the hotel entity for which the results are collected
sub_descriptions
array
additional description of the hotel
details about the hotel provided in addition to the description
check_in_time
object
hotel check-in time
check-in time indicated in the hotel listing
hour
integer
check-in hour
minute
integer
check-in minute
check_out_time
object
hotel check-out time
check-out time indicated in the hotel listing
hour
integer
check-out hour
minute
integer
check-out minute
full_address
string
full address of the hotel
address of the hotel indicated in the standardised format
domain
string
hotel domain
domain of the hotel’s website
url
string
hotel url
URL to the hotel’s website indicated in the listing
amenities
array
hotel amenities
information about hotel amenities
category
string
standardised category of the ammenity
category_label
string
label of the category
items
array
specific amenities and details
amenity
string
standardised amenity name
amenity_label
string
displayed amenity name
hint
string
standardised details about the amenity
hint_label
string
displayed details about the amenity
popular_amenities
array
hotel amenities
information about hotel amenities labelled as “popular”
amenity
string
standardised amenity name
amenity_label
string
displayed amenity name
hint
string
standardised details about the amenity
hint_label
string
displayed details about the amenity
location
object
information about the hotel location
information about the location where the hotel is located
neighborhood
string
name of the neighborhood where the hotel is located
neighborhood_description
string
description of the neighborhood where the hotel is located
maps_url
string
url to the location of the hotel in google maps
overall_score
float
overall score of the hotel location
indicates the overall score of the hotel’s location in the range from 1 to 5;
calculated based on data from the hotel’s proximity to nearby things to do and restaurants, transportation, and airports;
note that the criteria are not weighted equally in the overall score
score_by_categories
object
category scores of the hotel location
the scores of the hotel’s location tied to the categories that indicate the proximity to nearby things to do, restaurants, transportation, and airports;
overall
float
overall score of the hotel location
indicates the overall score of the hotel’s location in the range from 1 to 5;
calculated based on data from the hotel’s proximity to nearby things to do and restaurants, transportation, and airports;
note that the criteria are not weighted equally in the overall score
things_to_do
float
score relative to nearby things to do
indicates the score of the hotel’s location in the range from 1 to 5;
calculated based on data from the hotel’s proximity to nearby things to do
restaurants
float
score relative to nearby restaurants
indicates the score of the hotel’s location in the range from 1 to 5;
calculated based on data from the hotel’s proximity to nearby restaurants
transit
float
score relative to nearby transit options
indicates the score of the hotel’s location in the range from 1 to 5;
calculated based on data from the hotel’s proximity to nearby transit options
airport_access
float
score relative to nearby airports
indicates the score of the hotel’s location in the range from 1 to 5;
calculated based on data from the hotel’s proximity to nearby airports
latitude
float
hotel latitude
latitude coordinates of the hotel’s location
example: 39.4806397
longitude
float
hotel longitude
latitude coordinates of the hotel’s location
example: -106.0512973
location_chain
array
elements of the location chain
additional parameters of each element of the location chain
hotel reviews by criteria
information about reviews of the hotel entity
value
float
overall hotel rating based on customer votes
votes_count
integer
number of customer votes
the number of customer votes included in the calculation of the hotel rating
mentions
array
hotel mentions
information about hotel reviews by criteria
title
string
title of the evaluated criterion
positive_score
float
positive score by criterion
positive_count
integer
count of positive reviews by criterion
negative_count
integer
count of negative reviews by criterion
total_count
integer
count of all reviews by criterion
visible_by_default
boolean
element is visible by default
indicates whether the review element is visible by default
rating_distribution
object
rating distribution by votes
the distribution of votes across the rating in the range from 1 to 5
5
integer
votes for the 5-points rating
4
integer
votes for the 4-points rating
3
integer
votes for the 3-points rating
2
integer
votes for the 2-points rating
1
integer
votes for the 1-point rating
other_sites_reviews
array
reviews on third-party sites
reviews from third-paty sites
title
string
review title
contains a name of the third-party site where review initially appeared
url
string
review url
URL to the a third-party site where review initially appeared
review_text
string
review text
text of the review
rating
object
rating in the review
information about the rating enclosed in the review on a third-party site
rating_type
string
rating type
the type of rating enclosed in the review
possible values: CustomMax, Max5
value
float
rating value
value of the rating enclosed in the review
possible values: CustomMax – value in the range from 1 to 10 Max5 – value in the range from 1 to 5
votes_count
integer
votes count
the number of votes enclosed in the review
rating_max
integer
maximal value of the rating
the maximal value for the rating_type
overview_images
array
images displayed in the hotel overview
array containing URLs to images displayed in the hotel overview
prices
object
pricing details of the hotel entity
contains information about the hotel’s prices
price
integer
current price per night
the price of the stay in the hotel per night
price_without_discount
integer
price without discount
the price of the stay in the hotel per night, with no discount applied
currency
string
price currency USD is applied by default, unless specified in the POST array
discount_text
string
text of the discount
check_in
string
check-in date and tine
in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00”
example: 2019-11-15 12:57:46 +00:00
check_out
string
check-out date and tine
in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00”
example: 2019-11-15 12:57:46 +00:00
visitors
integer
number of visitors
items
array
array of items
array containing pricing details from third-party websites;
possible item types: hotel_info_price
type
string
type = ‘hotel_info_price’
title
string
title of the item
includes the name of the third-party website with pricing information
price
integer
price per night
price per night indicated on a third-patry website
currency
integer
price currency
currency of a price indicated on a third-patry website
url
string
third-party page url
URL to the third-party website page with pricing information
domain
string
third-party domain
domain of the third-party website page with pricing information
is_paid
boolean
indicates a paid booking link
if true, related hotel_info_price item is a hotel ad
if false, related hotel_info_price item is a free booking link
free_cancellation_until
string
date until which free cancellation is available
in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00”
equals null if free cancellation is not available for the selected dates
offers
array
featured price offers
type
string
type = ‘hotel_info_price_offer’
title
string
title of the price offer
price
integer
value of the price offer
currency
string
currency of the price offer
url
string
url of the price offer
URL to the page of the website where price offer appears
max_visitors
integer
the maximal number of visitors
the maximum number of visitors for which the price offer is valid
offer_images
array
price offer images
URLs of the images featured in the price offer
free_cancellation_until
string
date until free cancellation is available
in the UTC format: “yyyy-mm-dd hh-mm-ss +00:00”
equals null if free cancellation is not available for the selected dates